package com.ruoyi.sl.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.sl.mapper.SlModuleMapper;
import com.ruoyi.sl.domain.SlModule;
import com.ruoyi.sl.service.ISlModuleService;

/**
 * 模块Service业务层处理
 * 
 * @author admin
 * @date 2024-06-03
 */
@Service
public class SlModuleServiceImpl implements ISlModuleService 
{
    @Autowired
    private SlModuleMapper slModuleMapper;

    /**
     * 查询模块
     * 
     * @param moduleId 模块主键
     * @return 模块
     */
    @Override
    public SlModule selectSlModuleByModuleId(Long moduleId)
    {
        return slModuleMapper.selectSlModuleByModuleId(moduleId);
    }

    //根据部门ID查找模块
    @Override
    public SlModule selectSlModuleByDeptId(Long deptId){
        return slModuleMapper.selectSlModuleByDeptId(deptId);
    }

    /**
     * 查询模块列表
     * 
     * @param slModule 模块
     * @return 模块
     */
    @Override
    public List<SlModule> selectSlModuleList(SlModule slModule)
    {
        return slModuleMapper.selectSlModuleList(slModule);
    }

    /**
     * 查询所有模块
     *
     * @return 模块集合
     */
    @Override
    public List<SlModule> selectModuleAll(){
        return slModuleMapper.selectModuleAll();
    }

    /**
     * 新增模块
     * 
     * @param slModule 模块
     * @return 结果
     */
    @Override
    public int insertSlModule(SlModule slModule)
    {
        slModule.setCreateTime(DateUtils.getNowDate());
        return slModuleMapper.insertSlModule(slModule);
    }

    /**
     * 修改模块
     * 
     * @param slModule 模块
     * @return 结果
     */
    @Override
    public int updateSlModule(SlModule slModule)
    {
        slModule.setUpdateTime(DateUtils.getNowDate());
        return slModuleMapper.updateSlModule(slModule);
    }

    /**
     * 批量删除模块
     * 
     * @param moduleIds 需要删除的模块主键
     * @return 结果
     */
    @Override
    public int deleteSlModuleByModuleIds(Long[] moduleIds)
    {
        return slModuleMapper.deleteSlModuleByModuleIds(moduleIds);
    }

    /**
     * 删除模块信息
     * 
     * @param moduleId 模块主键
     * @return 结果
     */
    @Override
    public int deleteSlModuleByModuleId(Long moduleId)
    {
        return slModuleMapper.deleteSlModuleByModuleId(moduleId);
    }


}
